匀速(末端线速率)应用调试文档

修订日期 修订版本 修订内容 修订人
2024.09.18 V0.1 初始化文档 邓誉鑫
2025.07.14 v0.2 完善文档 邓誉鑫

[TOC]

1 简介

对于有匀速(末端线速率)需求的应用:如涂胶等,软件需要进行如下设置:

1.关闭动态调速使能标志 dynamic_adjust_motion_constraints

2.使用只规划位置方式 ONLY_POSITION_PLAN

3.如果运动过程中报关节速度超限,则需要降低目标线速度

4.如果运动过程中发现某些地方有速度波动的情况,则需要增大线加速度, 建议设置为全局笛卡尔线加速度, 角加速度也设置为全局笛卡尔角加速度,避免受姿态维度限制

5.如果运动过程中发现某些地方姿态旋转方向明显和期望不一致或者姿态变化远大于期望值,则需要调整起始关节角,让机械臂在其关节范围内能够连续变化

6.如果加速度增大了,机械臂末端抖动明显(一般是关节加速度太大),则需要先降低线加速度测试, 如仍抖动则再降低目标线速度

以上情况如能保证,最后得到的运动轨迹应该就是匀速轨迹。

根据以往的经验来看,限制匀速运动的因素主要是关节速度和加速度,如果用户设置的路点姿态变化均匀,且线加速度设置合适的情况下,可以得到一个末端线速率较大的匀速运动。

2 调试示例

2.1 以涂胶应用为例

参数与曲线如下(左图笛卡尔空间,右图关节空间):

// 用户输入的全局约束
maxJV = {1.62316, 1.62316, 3.10669, 3.11049, 3.11049, 3.11049};
maxJA = {6.45772, 6.45772, 20.944, 31.1049, 31.1049, 31.1049};
maxCV = {2, 5};
maxCA = {10, 10};

// 运动属性
path_property.maxV = {0.3, 1};
path_property.maxA = {1.2, 1.2};

image-20240918151253237

  • 根据速度曲线可以看出,六关节速度超出了全局限制:3.11049m/s(现象是目标关节速度超限),需要降低目标线速度,如降低为0.25m/s,调整后曲线如下:

image-20240918150709519

  • 调低目标线速度后六关节速度保持在全局限制范围内,但是通过左图(绿色线)看到并不能达到匀速效果(现象是非匀速),需要调大目标线加速度,将线加速度增大至6m/s^2^,调整后曲线如下:

image-20240919092525221

  • 可以从图中看到可以达到匀速效果,并检查关节加速度是否大幅度超限(现象是机械臂末端抖动明显),若有抖动现象,需要将加速度回退,按照小幅度调整线加速度以保证最后得到的运动轨迹是匀速轨迹

2.2 以直线圆弧涂胶匀速应用为例

参数与曲线如下(左图笛卡尔空间,右图关节空间):

// 用户输入的全局约束
maxJV = {1.62316, 1.62316, 3.10669, 3.11049, 3.11049, 3.11049};
maxJA = {6.45772, 6.45772, 20.944, 31.1049, 31.1049, 31.1049};
maxCV = {2, 5};
maxCA = {10, 50};

// 运动属性
path_property.maxV = [0.280000, 0.800000](直线段), [0.0560000, 0.800000](圆弧段)
path_property.maxA = [3.000000, 3.000000], [2.000000, 2.000000]
path_property.plan_method = interface::PlanMethod::ONLY_POSITION_PLAN       // 适用于匀速场景
move_property.dynamic_adjust_motion_constraints = false                     // 关闭动态调速

  • 跟据曲线可以看出, 圆弧段角位移大导致六关节速度较大, 提高匀速线速度可能会导致圆弧段的六关节速度超速, 所以需要跟据实际角位移与关节速度计算出最大匀速线速度:

    • 跟据以下关键日志信息能够得到圆弧段线位移长度: 0.044245, 角位移长度: 1.656990

      交融半径: 0.020000 0.020000 规划方式: 只规划位置, 动态调速开关: 0, 路径长度: 0.044245 1.656990, 姿态插补类型: 0, (0:绕定轴转动;1:姿态与路径绑定;2:经过中间点姿态)
      
    • 由支持最大关节速度3.14 rad/s 可得在不超关节速度前提下最快的运动时间为: 角位移 / 最大关节速度 ≈ 0.53 s

    • 最大线速度 = 线位移 / 最短时间 ≈ 0.083 m / s

  • 为达到直线段与圆弧段一致匀速的应用需求, 需要将直线段的线速度与圆弧段保持一致, 修改后的匀速参数如下:

    path_property.maxV = [0.0830000, 0.800000](直线段), [0.0830000, 0.800000](圆弧段)
    path_property.maxA = [3.000000, 3.000000], [2.000000, 2.000000]
    
  • 可在上面基础上适当增加线速度调试关节是否超速, 以调试出合适的最大匀速线速度

image-20250714110156751

results matching ""

    No results matching ""